#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

@interface SM4Crypto : NSObject

+ (NSDictionary *)sm4Encrypt:(NSString *)secretKey withPlainText:(NSString *)plainText;

+ (NSDictionary *)sm4Encrypt:(NSString *)secretKey withPlainText:(NSString *)plainText withTime:(long long)milliseconds;

+ (NSString *)convertStringToHexString:(NSString *)string;

+ (NSDictionary *)sm4Decrypt:(NSString *)secretKey withPlainText:(NSString *)plainText withTime:(long long)milliseconds;

+ (NSString *)encodeBase64:(NSString *)input;

+ (NSString *)decodeBase64:(NSString *)input;

@end

NS_ASSUME_NONNULL_END
